﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ModelLayer;
using System.Reflection;
using ModelAccess;

namespace DataLayer
{
    public class ModelliHelper : AbstractHelper
    {
        public ModelliHelper()
            : base("Modelli")
        {

        }
        public ModelliHelper(AbstractHelper ah)
            : base("Modelli", ah)
        {

        }
        public Modello getModello(Int32 idModello)
        {
            Modello modello = (from m in ctx.Modelli.Include("Competenze")
                               where m.Id.Equals(idModello)
                               select m).FirstOrDefault();
            return modello;
        }

        public Modello getModello(Int32 idModello, String username)
        {
            Utente utente = ctx.Utenti.Include("Risposte").Where(u => u.Username.Equals(username)).FirstOrDefault();
            Modello modello = ctx.Modelli.Include("Competenze.AnagraficaPesi.AnagraficaRisposta").Where(m => m.Id == idModello).FirstOrDefault();
            return modello;


        }

        public Dictionary<String, String> getDictionary(String language)
        {
            
            return ctx.DizionarioCompetenza.Where(x => x.Lingua == language).ToDictionary(x => x.CodiceDizionario, x => x.Descrizione);

        }
        
    }
}
